package main

import (
	"fmt"
	"google.golang.org/grpc"
	"google.golang.org/grpc/reflection"
	"log"
	"net"
	"rpcSrv/configs"
	"rpcSrv/handler"
	integralPB "rpcSrv/proto/integral"
	userPB "rpcSrv/proto/user"
	"rpcSrv/utils"
)

func main() {
	fmt.Println("读取配置文件")
	conf := configs.GetAppConf()
	lis, err := net.Listen("tcp", fmt.Sprintf(":%v", conf.Port)) //监听所有网卡8028端口的TCP连接
	if utils.CheckErr(err) {
		log.Fatalf("监听失败: %v", err)
	}
	srv := grpc.NewServer() //创建gRPC服务
	//注册用户相关Handler
	userHdl := new(handler.UserHdl)
	userPB.RegisterUserSrvServer(srv, userHdl)
	//注册积分相关Handler
	integralHdl := new(handler.IntegralHdl)
	integralPB.RegisterIntegralSrvServer(srv, integralHdl)
	// 在gRPC服务器上注册反射服务
	reflection.Register(srv)
	// 将监听交给gRPC服务处理
	fmt.Println("启动服务")
	err = srv.Serve(lis)
	if utils.CheckErr(err) {
		log.Fatalf("服务错误: %v", err)
	}
}
